Evaluation of Java Thread Performance on Two Di erentMultithreaded
نویسندگان
چکیده
Modern programming languages and operating systems encourage the use of threads to exploit concurrency and simplify program structure. An integral and important part of the Java language is its multithreading capability. Despite the portability of Java threads across almost all platforms, the performance of Java threads varies according to the multithreading support of the underlying operating system and the way Java Virtual Machine maps Java threads to the native system threads. In this paper, a well-known compute-intensive benchmark , the EP benchmark, was used to examine various performance issues involved in the execution of threads on two diierent multithreaded platforms: Windows NT and Solaris. Experiments were carried out to investigate thread creation and computation behavior under diierent system loads, and to explore execution features under certain extreme situations such as the concurrent execution of very large number of Java threads. Some of the experimental results obtained from threads were compared with a similar implementation using processes. These results show that the performance of Java threads diiers depending on the various mechanisms used to map Java threads to native system threads, as well as on the scheduling policies for these native threads. Thus, this paper provides important insights into the behavior and performance of Java threads on these two platforms, and highlights the pitfalls that may be encountered when developing multithreaded Java programs.
منابع مشابه
Comparative performance evaluation of Java threads for embedded applications: Linux Thread vs. Green Thread
Despite the portability and platform-independence of Java programs, their performance depends on the threading mechanisms of the host operating system. In this paper, we measure the performance of Java threads for two different multi-threading implementations, Linux Thread and Green Thread, using PersonalJava (TM) on a Linuxbased platform. The experimental results show the relative strengths an...
متن کاملExperiences implementing efficient Java thread serialization, mobility and persistence
Today, mobility and persistence are important aspects of distributed computing. They have many fields of use such as load balancing, fault tolerance and dynamic reconfiguration of applications. In this context, Java provides many useful mechanisms for the mobility of code via dynamic class loading, and the mobility or persistence of data via object serialization. However, Java does not provide ...
متن کاملExploiting Under-Utilized Cores with Deferred Methods
Effective parallelization of fine-grained tasks, such as in dynamic program analysis, is challenging because thread communication overheads may outweigh the benefits of parallelism. In this paper, we address this issue with deferred methods, a novel Java framework that aggregates invocations of analysis methods in thread-local buffers and processes them altogether when a buffer is full. The fra...
متن کاملTransparent Distributed Java
We describe our modi cations to the Ka e Java runtime to support transparent distribution of Java threads and objects across multiple processors and machines. We also discuss the design of a shared object system used by the Java runtime to provide transparent object sharing to Java applications. Although we also implemented a version for symmetric multiprocessors (SMPs), this paper focuses on a...
متن کاملEfficient Java thread serialization
The Java system supports the transmission of code via dynamic class loading, and the transmission or storage of data via object serialization. However, Java does not provide any mechanism for the transmission/storage of computation (i.e., thread serialization). Several projects have recently addressed the issue of Java thread serialization, e.g., Sumatra, Wasp, JavaGo, Brakes, Merpati. But none...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1999